home *** CD-ROM | disk | FTP | other *** search
- Subject: v15i088: Mush (mail user's shell) upgrade kit, version 6.3, Part04/04
- Newsgroups: comp.sources.unix
- Sender: sources
- Approved: rsalz@uunet.UU.NET
-
- Submitted-by: dheller@cory.Berkeley.EDU (Dan Heller)
- Posting-number: Volume 15, Issue 88
- Archive-name: mush6.3kit/part04
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of shell archive."
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'Diffs.6.3.c' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Diffs.6.3.c'\"
- else
- echo shar: Extracting \"'Diffs.6.3.c'\" \(52485 characters\)
- sed "s/^X//" >'Diffs.6.3.c' <<'END_OF_FILE'
- X .sp
- X When constructing a return mail address to the author of a message,
- X .B reply
- X! searches for special mail headers in the author's message which
- X indicate the most efficient mail path for return mail.
- X .I Mush
- X will search for the \*QFrom:\*U, \*QReply-To:\*U,
- X--- 2285,2291 ----
- X .sp
- X When constructing a return mail address to the author of a message,
- X .B reply
- X! searches for special mail headers in the author's message that
- X indicate the most efficient mail path for return mail.
- X .I Mush
- X will search for the \*QFrom:\*U, \*QReply-To:\*U,
- X***************
- X*** 2338,2344 ****
- X .BR saveopts " [file]"
- X The complement of
- X .BR source ,
- X! .B saveopts
- X will save all settable variables, aliases
- X and cmd's in the initialization file.
- X (See the
- X--- 2371,2377 ----
- X .BR saveopts " [file]"
- X The complement of
- X .BR source ,
- X! .B saveopts ,
- X will save all settable variables, aliases
- X and cmd's in the initialization file.
- X (See the
- X***************
- X*** 2410,2416 ****
- X .in +2
- X .ta 1i
- X - reverse sort order
- X! d sort by date received
- X a sort by author (alphabetical)
- X s sort by subject ignoring \*QRe:\*U
- X R sort by subject (alphabetical)
- X--- 2443,2449 ----
- X .in +2
- X .ta 1i
- X - reverse sort order
- X! d sort by date
- X a sort by author (alphabetical)
- X s sort by subject ignoring \*QRe:\*U
- X R sort by subject (alphabetical)
- X***************
- X*** 2426,2431 ****
- X--- 2459,2469 ----
- X New, unread messages are first, followed by preserved messages,
- X and finally deleted messages are placed at the end of the list.
- X .sp
- X+ When sorting by date, the boolean variable
- X+ .B date_received
- X+ is checked. If it is set, then sorting goes by date received.
- X+ Otherwise (default), sorting is by date sent by the original author.
- X+ .sp
- X If the variable
- X .I sort
- X is set, messages are sorted each time the user's system mailbox is
- X***************
- X*** 2504,2514 ****
- X Options may be either boolean, in which case it is only
- X significant to see whether or not they are set;
- X string, in which case the actual value is of interest;
- X! or numerical, in which the numerical value is important.
- X Some variables may have attributes
- X of boolean and string at the same time.
- X .sp
- X! If you or the program references a variable which is not explicitly set,
- X then the environment variables are checked and a pointer to that data
- X is returned.
- X Following is a list of all predefined variables.
- X--- 2542,2552 ----
- X Options may be either boolean, in which case it is only
- X significant to see whether or not they are set;
- X string, in which case the actual value is of interest;
- X! or numerical, in which case the numerical value is important.
- X Some variables may have attributes
- X of boolean and string at the same time.
- X .sp
- X! If you or the program references a variable that is not explicitly set,
- X then the environment variables are checked and a pointer to that data
- X is returned.
- X Following is a list of all predefined variables.
- X***************
- X*** 2531,2537 ****
- X will ignore those headers even in the situations mentioned here.
- X No headers can be ignored during updates and when using the
- X .B save
- X! command since the user may ignore headers which are required by
- X .I Mush
- X or any other mail system to read those folders.
- X .sp
- X--- 2569,2575 ----
- X will ignore those headers even in the situations mentioned here.
- X No headers can be ignored during updates and when using the
- X .B save
- X! command since the user may ignore headers that are required by
- X .I Mush
- X or any other mail system to read those folders.
- X .sp
- X***************
- X*** 2559,2569 ****
- X .TP
- X .B autodelete
- X (Boolean)
- X! When exiting mail, all messages which have been read
- X .I "regardless of whether they have been marked for deletion"
- X are removed.
- X Only messages that haven't been read or marked as
- X! .BR preserved ,
- X are not removed.
- X .TP
- X .B autoedit
- X--- 2597,2607 ----
- X .TP
- X .B autodelete
- X (Boolean)
- X! When exiting mail, all messages that have been read
- X .I "regardless of whether they have been marked for deletion"
- X are removed.
- X Only messages that haven't been read or marked as
- X! .BR preserved
- X are not removed.
- X .TP
- X .B autoedit
- X***************
- X*** 2584,2590 ****
- X .TP
- X .B auto_route
- X (Boolean)
- X! This variable has two functions, both of which only concern the command,
- X .BR replyall ,
- X and is only important to users who use UUCP to mail to remote sites.
- X The first function is to cause replyall to modify the return addresses
- X--- 2622,2628 ----
- X .TP
- X .B auto_route
- X (Boolean)
- X! This variable has two functions, both of which only concern the command
- X .BR replyall ,
- X and is only important to users who use UUCP to mail to remote sites.
- X The first function is to cause replyall to modify the return addresses
- X***************
- X*** 2594,2609 ****
- X destination.
- X If the original sender of the message was on a remote
- X machine which your machine does not exchange UUCP mail with, then a UUCP
- X! path containing hosts which you do talk to will have to be
- X created to respond to the author.
- X However, if he mailed to other people
- X! on machines which are also multi-hops away, the addresses he used for
- X those recipients may differ from what you should specify if you were to
- X try to reply to everyone on the listed in the original message.
- X .sp
- X! For example, if the original sender came from remote host,
- X .B pixar
- X! and the list of recipients looked like,
- X .sp
- X .nf
- X .in +2
- X--- 2632,2647 ----
- X destination.
- X If the original sender of the message was on a remote
- X machine which your machine does not exchange UUCP mail with, then a UUCP
- X! path containing hosts that you do talk to will have to be
- X created to respond to the author.
- X However, if he mailed to other people
- X! on machines that are also multi-hops away, the addresses he used for
- X those recipients may differ from what you should specify if you were to
- X try to reply to everyone on the listed in the original message.
- X .sp
- X! For example, if the original sender came from remote host
- X .B pixar
- X! and the list of recipients looked like
- X .sp
- X .nf
- X .in +2
- X***************
- X*** 2625,2631 ****
- X An attempt will be made to compensate by reconstructing the addresses
- X for \*Quser2\*U and \*Quser3\*U according to the address of the original
- X sender, \*Quser1\*U.
- X! The new addresses for \*Quser2\*U and \*Quser3\*U should therefore become,
- X .sp
- X .ti +2
- X pixar!r2d2!user2, pixar!r2d2!user3.
- X--- 2663,2669 ----
- X An attempt will be made to compensate by reconstructing the addresses
- X for \*Quser2\*U and \*Quser3\*U according to the address of the original
- X sender, \*Quser1\*U.
- X! The new addresses for \*Quser2\*U and \*Quser3\*U should therefore become
- X .sp
- X .ti +2
- X pixar!r2d2!user2, pixar!r2d2!user3.
- X***************
- X*** 2639,2645 ****
- X UUCP mail connections with.
- X This list is checked when constructing
- X mail addresses and the shortest path is made by removing from the
- X! UUCP path those hosts which do not need to be called.
- X See the entry for
- X .B known_hosts
- X for more information.
- X--- 2677,2683 ----
- X UUCP mail connections with.
- X This list is checked when constructing
- X mail addresses and the shortest path is made by removing from the
- X! UUCP path those hosts that do not need to be called.
- X See the entry for
- X .B known_hosts
- X for more information.
- X***************
- X*** 2676,2682 ****
- X .B autosign
- X (Boolean/string)
- X Append a signature to outgoing mail.
- X! If this variable is set, but not to a string (e.g., boolean-true),
- X then the file ~/.signature is used.
- X .sp
- X Otherwise, the variable is interpreted in one of three ways.
- X--- 2714,2720 ----
- X .B autosign
- X (Boolean/string)
- X Append a signature to outgoing mail.
- X! If this variable is set, but not to a string (e.g., boolean-true)
- X then the file ~/.signature is used.
- X .sp
- X Otherwise, the variable is interpreted in one of three ways.
- X***************
- X*** 2692,2698 ****
- X is interpreted as a user-definable variable and is expanded and appended
- X to the letter.
- X .sp
- X! Finally, if the variable is set to a string that begins with a backslash (\\),
- X then the string itself (minus the `\\' character) is used; no expansion
- X is done and no files are read.
- X .sp
- X--- 2730,2736 ----
- X is interpreted as a user-definable variable and is expanded and appended
- X to the letter.
- X .sp
- X! Finally, if the variable is set to a string that begins with a backslash (\\)
- X then the string itself (minus the `\\' character) is used; no expansion
- X is done and no files are read.
- X .sp
- X***************
- X*** 2699,2705 ****
- X In the latter two cases, it is advisable to set the variable using single
- X quotes to avoid expanding the variable beforehand or eliminating the
- X backslash.
- X! Examples,
- X .sp
- X .ti +2
- X set autosign = '$foo'
- X--- 2737,2743 ----
- X In the latter two cases, it is advisable to set the variable using single
- X quotes to avoid expanding the variable beforehand or eliminating the
- X backslash.
- X! Examples:
- X .sp
- X .ti +2
- X set autosign = '$foo'
- X***************
- X*** 2707,2713 ****
- X set autosign = '\\ Dan Heller island!argv@ucbcad.berkeley.edu'
- X .sp
- X Warning: if redirection from the calling shell is used, there will be
- X! no signature or forutne added to outgoing mail. For example,
- X .sp
- X .ti +2
- X % mush -s report manager < report_file
- X--- 2745,2751 ----
- X set autosign = '\\ Dan Heller island!argv@ucbcad.berkeley.edu'
- X .sp
- X Warning: if redirection from the calling shell is used, there will be
- X! no signature or fortune added to outgoing mail. For example,
- X .sp
- X .ti +2
- X % mush -s report manager < report_file
- X***************
- X*** 2720,2727 ****
- X .B autosign2
- X (String)
- X This alternate signature is available for special cases where the default
- X! signature is not desired or if no signture is desired for special addresses
- X! or if special addresses only require a signature.
- X The format for this variable is:
- X .sp
- X .ti +2
- X--- 2758,2765 ----
- X .B autosign2
- X (String)
- X This alternate signature is available for special cases where the default
- X! signature is not desired or if no signature is desired for special addresses
- X! or if only special addresses require a signature.
- X The format for this variable is:
- X .sp
- X .ti +2
- X***************
- X*** 2780,2786 ****
- X .TP
- X .B crt
- X (Numeric)
- X! Set to a value which describes the number of lines a message
- X must have before invoking the
- X .B pager
- X to view a message.
- X--- 2818,2824 ----
- X .TP
- X .B crt
- X (Numeric)
- X! Set to a value that describes the number of lines a message
- X must have before invoking the
- X .B pager
- X to view a message.
- X***************
- X*** 2792,2807 ****
- X string is automatically set upon startup of
- X .I Mush
- X and is reset each time the command
- X! .BR cd ,
- X is called.
- X It is referenced each time
- X .B pwd
- X is called and may be used as any other shell variable.
- X .TP
- X .B dead
- X (String)
- X File to use instead of dead.letter when interrupted mail is saved.
- X! For more information, see the variable,
- X .B nosave.
- X .TP
- X .B dot
- X--- 2830,2857 ----
- X string is automatically set upon startup of
- X .I Mush
- X and is reset each time the command
- X! .BR cd
- X is called.
- X It is referenced each time
- X .B pwd
- X is called and may be used as any other shell variable.
- X .TP
- X+ .B date_received
- X+ (Boolean)
- X+ When message headers are printed, the date is normally shown is
- X+ the time and date the sender sent the message. If this variable
- X+ is set, then the date displayed is the date received.
- X+ .sp
- X+ When sorting messages by date, this variable is queried to determine
- X+ whether the messages should be sorted by date sent or date received.
- X+ .sp
- X+ \fBWarning:\fR For mailers that store messages \fIwithout\fR a line
- X+ that starts with \*QFrom \*U, this option does nothing.
- X+ .TP
- X .B dead
- X (String)
- X File to use instead of dead.letter when interrupted mail is saved.
- X! For more information, see the variable
- X .B nosave.
- X .TP
- X .B dot
- X***************
- X*** 2818,2824 ****
- X (Character)
- X When typing in a letter (not in an editor), when the
- X .B escape
- X! character is the first character on the line, the following character
- X is examined and a corresponding function associated with that
- X .B "escape command"
- X is executed.
- X--- 2868,2874 ----
- X (Character)
- X When typing in a letter (not in an editor), when the
- X .B escape
- X! character is the first character on the line, the next character
- X is examined and a corresponding function associated with that
- X .B "escape command"
- X is executed.
- X***************
- X*** 2855,2869 ****
- X make sure that only a selected group of people get a fortune since
- X certain people may not understand the messages at the end of your
- X mail. Therefore, you can set a list of addresses (either pure addresses
- X! or aliases which are expanded to addresses) to be the only people who
- X receive fortunes if one is to be appended. Therefore,
- X if the To: and Cc: lines contain only address listed in this string
- X variable, then a fortune is appended to the message.
- X! If those lists contain names which are not on the fortunates
- X list, then no fortune is added.
- X This cannot be overriden; using the
- X tilde command \*Q~F\*U does not force a fortune to be added unless the
- X! list of individuals on the recipient list are all included in the fortunates
- X list. The list is made up of addresses or aliases separated by spaces or
- X commas.
- X .I "NOTE: fortune must be set in order for fortunates to work."
- X--- 2905,2919 ----
- X make sure that only a selected group of people get a fortune since
- X certain people may not understand the messages at the end of your
- X mail. Therefore, you can set a list of addresses (either pure addresses
- X! or aliases that are expanded to addresses) to be the only people who
- X receive fortunes if one is to be appended. Therefore,
- X if the To: and Cc: lines contain only address listed in this string
- X variable, then a fortune is appended to the message.
- X! If those lists contain names that are not on the fortunates
- X list, then no fortune is added.
- X This cannot be overriden; using the
- X tilde command \*Q~F\*U does not force a fortune to be added unless the
- X! individuals on the recipient list are all included in the fortunates
- X list. The list is made up of addresses or aliases separated by spaces or
- X commas.
- X .I "NOTE: fortune must be set in order for fortunates to work."
- X***************
- X*** 2915,2920 ****
- X--- 2965,2977 ----
- X in which case the name and address are the same.
- X .sp
- X .TP
- X+ .B history
- X+ (Numeric)
- X+ This variable is set to the number of commands the shell interface
- X+ will remember. It is just like the history variable used in
- X+ .I csh.
- X+ If unset, the last command can always be referenced, but none other.
- X+ .TP
- X .B hold
- X (Boolean)
- X Normally, on termination of mail, read messages are saved in
- X***************
- X*** 2937,2942 ****
- X--- 2994,3011 ----
- X If the home directory cannot be found or read/write access is denied, an
- X alternate directory, typically /tmp, is used.
- X .TP
- X+ .B hostname
- X+ (String)
- X+ This is the name of your computer. Currently, its sole usage is to
- X+ compose a correct \*QFrom:\*U line for use with Mail Transport Agents
- X+ that do not create this header automatically. This will aid the
- X+ recipients of your mail in replying to your messages.
- X+ .sp
- X+ Note: the user should not have to set
- X+ this variable since it should be set automatically by the system. However,
- X+ it may happen that the system's hostname cannot be queried and the user may
- X+ have to set this variable manually.
- X+ .TP
- X .B ignore_bang
- X (Boolean)
- X If set,
- X***************
- X*** 2955,2969 ****
- X .B reply
- X commands.
- X .TP
- X .B in_reply_to
- X (String)
- X! This variable may be set to a string which will complete the
- X header \*QIn-Reply-To:\*U.
- X The format of this string is identical to the options for the variable
- X .BR hdr_format .
- X .sp
- X For example, if the user were to respond to a message
- X! from Dan Heller that was sent on October 21, 1987 at 10:39pm, with
- X .B in_reply_to
- X set to the string
- X .in +2
- X--- 3024,3049 ----
- X .B reply
- X commands.
- X .TP
- X+ .B indent_str
- X+ (String)
- X+ When including messages into the text of a letter you are editing,
- X+ each line of the messages is preceded by the value of
- X+ .BR indent_str .
- X+ If it is unset, the message body is indented by the string \*Q> \*U.
- X+ See also the variables
- X+ .B pre_indent_str
- X+ and
- X+ .BR post_indent_str .
- X+ .TP
- X .B in_reply_to
- X (String)
- X! This variable may be set to a string that will complete the
- X header \*QIn-Reply-To:\*U.
- X The format of this string is identical to the options for the variable
- X .BR hdr_format .
- X .sp
- X For example, if the user were to respond to a message
- X! from Dan Heller that was sent on October 21, 1987, at 10:39pm, with
- X .B in_reply_to
- X set to the string
- X .in +2
- X***************
- X*** 2973,2994 ****
- X .ti -2
- X the header line
- X .sp
- X! In-Reply-To: Dan Heller's message as of Oct 21, 1987 10:39pm.
- X .in-2
- X .sp
- X would be added to the message.
- X .TP
- X- .B indent_str
- X- (String)
- X- When including messages into the text of a letter you are editing,
- X- each line of the messages is preceded by the value of
- X- .BR indent_str .
- X- If it is unset, the message body is indented by the string \*Q> \*U.
- X- See also the variables
- X- .B pre_indent_str
- X- and
- X- .BR post_indent_str .
- X- .TP
- X .B keepsave
- X (Boolean)
- X If set, the commands
- X--- 3053,3063 ----
- X .ti -2
- X the header line
- X .sp
- X! In-Reply-To: Dan Heller's message as of Oct 21, 1987, 10:39pm.
- X .in-2
- X .sp
- X would be added to the message.
- X .TP
- X .B keepsave
- X (Boolean)
- X If set, the commands
- X***************
- X*** 3007,3016 ****
- X and/or commas, and describes
- X the hosts with whom you know your machine shares UUCP connections.
- X When replying to mail, many times you will see that the return path
- X! constructed will have hostnames which your site could call, but instead
- X the mail has been routed through a number of different machines first.
- X .sp
- X! For example, if you respond to mail which would mail to the path,
- X .sp
- X .ti +2
- X unicom!pixar!root
- X--- 3076,3085 ----
- X and/or commas, and describes
- X the hosts with whom you know your machine shares UUCP connections.
- X When replying to mail, many times you will see that the return path
- X! constructed will have hostnames that your site could call, but instead
- X the mail has been routed through a number of different machines first.
- X .sp
- X! For example, if you respond to mail that would mail to the path
- X .sp
- X .ti +2
- X unicom!pixar!root
- X***************
- X*** 3018,3024 ****
- X but your know your machine already calls pixar, then sending the mail
- X to unicom first is unnecessary.
- X If you have set your known_hosts string to include pixar in its list,
- X! the resulting address would look like,
- X .sp
- X .ti +2
- X pixar!root
- X--- 3087,3093 ----
- X but your know your machine already calls pixar, then sending the mail
- X to unicom first is unnecessary.
- X If you have set your known_hosts string to include pixar in its list,
- X! the resulting address would look like
- X .sp
- X .ti +2
- X pixar!root
- X***************
- X*** 3073,3079 ****
- X When no_expand is set, aliases are not expanded and the headers
- X reflect the same information as typed by the user.
- X .TP
- X! .B no_hdr
- X (Boolean)
- X If set, this variable tells
- X .I Mush
- X--- 3142,3148 ----
- X When no_expand is set, aliases are not expanded and the headers
- X reflect the same information as typed by the user.
- X .TP
- X! .B no_hdrs
- X (Boolean)
- X If set, this variable tells
- X .I Mush
- X***************
- X*** 3095,3103 ****
- X signals.
- X When the message is terminated, a copy of it is saved to the
- X file \*Qdead.letter\*U in the user's home directory or to the file described
- X! by the variable,
- X .BR dead .
- X! If the variable,
- X .B nosave
- X is set, then a backup copy of the message will not be saved.
- X .TP
- X--- 3164,3172 ----
- X signals.
- X When the message is terminated, a copy of it is saved to the
- X file \*Qdead.letter\*U in the user's home directory or to the file described
- X! by the variable
- X .BR dead .
- X! If the variable
- X .B nosave
- X is set, then a backup copy of the message will not be saved.
- X .TP
- X***************
- X*** 3133,3139 ****
- X as follows:
- X .sp
- X .ti +2
- X! set pre_indent_str = '[In the message entitled "%s", on %7d\n %n writes:]'
- X .sp
- X You can then include a message body using \*Q~i\*U, and you might
- X get something like this:
- X--- 3202,3208 ----
- X as follows:
- X .sp
- X .ti +2
- X! set pre_indent_str = '[In the message entitled "%s", on %7d\\n %n writes:]'
- X .sp
- X You can then include a message body using \*Q~i\*U, and you might
- X get something like this:
- X***************
- X*** 3215,3221 ****
- X .B prompt
- X (String)
- X You can set your prompt to tell you many different pieces of information.
- X! By default, the prompt is set to the string,
- X .sp
- X .ti +2
- X \*QMsg %m of %t: \*U
- X--- 3284,3290 ----
- X .B prompt
- X (String)
- X You can set your prompt to tell you many different pieces of information.
- X! By default, the prompt is set to the string
- X .sp
- X .ti +2
- X \*QMsg %m of %t: \*U
- X***************
- X*** 3238,3243 ****
- X--- 3307,3313 ----
- X %D today's day (Sun, Mon, Tue, ...)
- X %f filename of the current folder
- X %m \*Qcurrent message\*U number
- X+ %M current month
- X %n number of \*Qnew\*U messages
- X %N today's date (Number of the day in the month)
- X %T current time (hours and seconds)
- X***************
- X*** 3255,3260 ****
- X--- 3325,3343 ----
- X .I Mush
- X is not printed on startup.
- X .TP
- X+ .B realname
- X+ (String)
- X+ Set to the name of the user. The name is initialized to the value of
- X+ the environment variable
- X+ .B NAME
- X+ upon invocation of the program.
- X+ If that isn't set, then the name is gotten from the password file if
- X+ available. If this variable wants to be reset or changed after the
- X+ program has started, the user should issue the command:
- X+ .sp
- X+ .ti +2
- X+ set realname = "Your name here"
- X+ .TP
- X .B record
- X (String)
- X Set to the name of a file to record all outgoing mail.
- X***************
- X*** 3277,3283 ****
- X given there is used.
- X If the variable
- X .B reply_to_hdr
- X! is set to a of headers (delimited by spaces or commas), then that list
- X is searched.
- X If none of the headers listed in the variable exist
- X in the message, then a warning message is printed and the default
- X--- 3360,3366 ----
- X given there is used.
- X If the variable
- X .B reply_to_hdr
- X! is set to a list of headers (delimited by spaces or commas), then that list
- X is searched.
- X If none of the headers listed in the variable exist
- X in the message, then a warning message is printed and the default
- X***************
- X*** 3286,3296 ****
- X .B reply
- X command for more details.
- X .TP
- X! .B sendmail
- X! (String)
- X! If set, the program and arguments described by this variable will
- X! be executed to actually deliver mail sent by
- X! .I Mush.
- X .TP
- X .B screen
- X (Numeric)
- X--- 3369,3381 ----
- X .B reply
- X command for more details.
- X .TP
- X! .B save_empty
- X! (Boolean)
- X! Normally, when all messages in a folder are deleted and the user updates
- X! the folder or changes to a new folder, the empty folder is deleted.
- X! .B save_empty
- X! prevents the folder from being deleted and it is left zero length.
- X! Note: the main system mailbox is never deleted when empty anyway.
- X .TP
- X .B screen
- X (Numeric)
- X***************
- X*** 3299,3308 ****
- X .TP
- X .B screen_win
- X (Numeric)
- X! Man be set to the number of message headers to display in the tool mode.
- X A subwindow is created for message headers, and its size is large
- X enough to hold $screen_win headers.
- X .TP
- X .B show_deleted
- X (Boolean)
- X If true, deleted message headers are displayed along with
- X--- 3384,3399 ----
- X .TP
- X .B screen_win
- X (Numeric)
- X! May be set to the number of message headers to display in the tool mode.
- X A subwindow is created for message headers, and its size is large
- X enough to hold $screen_win headers.
- X .TP
- X+ .B sendmail
- X+ (String)
- X+ If set, the program and arguments described by this variable will
- X+ be executed to actually deliver mail sent by
- X+ .I Mush.
- X+ .TP
- X .B show_deleted
- X (Boolean)
- X If true, deleted message headers are displayed along with
- X***************
- X*** 3312,3320 ****
- X .TP
- X .B show_hdrs
- X (String)
- X! Set to a list (space and/or comma separated) of headers which are to be the
- X only headers displayed when viewing a message.
- X! This variable disables the headers supressed by the
- X .B ignore
- X command.
- X For example,
- X--- 3403,3411 ----
- X .TP
- X .B show_hdrs
- X (String)
- X! Set to a list (space and/or comma separated) of headers that are to be the
- X only headers displayed when viewing a message.
- X! This variable disables the headers suppressed by the
- X .B ignore
- X command.
- X For example,
- X***************
- X*** 3322,3328 ****
- X .ti +2
- X set show_hdrs = "from date subject to cc"
- X .sp
- X! will only display the headers,
- X .B From: Date: Subject: To: Cc:
- X in their entirety.
- X .TP
- X--- 3413,3419 ----
- X .ti +2
- X set show_hdrs = "from date subject to cc"
- X .sp
- X! will only display the headers
- X .B From: Date: Subject: To: Cc:
- X in their entirety.
- X .TP
- X***************
- X*** 3342,3348 ****
- X .TP
- X .B tmpdir
- X (String)
- X! This variable describes the path to use as the directory to use
- X for all tempfiles that
- X .I Mush
- X uses. By default, the user's home directory is used. If that
- X--- 3433,3439 ----
- X .TP
- X .B tmpdir
- X (String)
- X! This variable describes the path to use as the directory
- X for all tempfiles that
- X .I Mush
- X uses. By default, the user's home directory is used. If that
- X***************
- X*** 3351,3363 ****
- X .TP
- X .B toplines
- X (Numeric)
- X! The number of lines of a message to print when the "top" command
- X! is issued.
- X! If unset, $crt lines are printed.
- X .TP
- X .B unix
- X (Boolean)
- X! If set, commands which are not
- X .I Mush
- X commands are considered to be
- X .I UNIX
- X--- 3442,3457 ----
- X .TP
- X .B toplines
- X (Numeric)
- X! The number of lines of a message to print when the
- X! .B top
- X! command is issued. If unset, $crt lines are printed.
- X! Note that the message body only is printed when using the
- X! .B top
- X! command; message headers are not counted as lines since they are not displayed.
- X .TP
- X .B unix
- X (Boolean)
- X! If set, commands that are not
- X .I Mush
- X commands are considered to be
- X .I UNIX
- X***************
- X*** 3393,3399 ****
- X When through editing messages, just before sending,
- X .B verify
- X will ask you if you want to send, continue editing, or abort the
- X! whole message all together.
- X .TP
- X .B visual
- X (String)
- X--- 3487,3493 ----
- X When through editing messages, just before sending,
- X .B verify
- X will ask you if you want to send, continue editing, or abort the
- X! whole message altogether.
- X .TP
- X .B visual
- X (String)
- X***************
- X*** 3436,3442 ****
- X will be aware of changes in other environments should they be forced
- X to use them.
- X There may also be warning messages of failed routines
- X! or assertions which are not fatal enough to interrupt normal running
- X of the program.
- X .TP
- X .B wrap
- X--- 3530,3536 ----
- X will be aware of changes in other environments should they be forced
- X to use them.
- X There may also be warning messages of failed routines
- X! or assertions that are not fatal enough to interrupt normal running
- X of the program.
- X .TP
- X .B wrap
- X***************
- X*** 3452,3463 ****
- X .B next
- X command.
- X .SH "MAIL ADDRESSES"
- X! Whenever a command which requires a user address or set of addresses
- X is specified
- X .RB ( mail ,
- X .BR reply ,
- X .BR alias ,
- X! .BR etc ),
- X the addresses given must be separated by commas.
- X Most casual users specify addresses that contain no comments or whitespace.
- X The simplest addresses are just the login names of the users you wish to send
- X--- 3546,3557 ----
- X .B next
- X command.
- X .SH "MAIL ADDRESSES"
- X! Whenever a command that requires a user address or set of addresses
- X is specified
- X .RB ( mail ,
- X .BR reply ,
- X .BR alias ,
- X! .BR etc )
- X the addresses given must be separated by commas.
- X Most casual users specify addresses that contain no comments or whitespace.
- X The simplest addresses are just the login names of the users you wish to send
- X***************
- X*** 3565,3571 ****
- X .nf
- X .in +2
- X .ta 1.5i
- X! alias george George Jetson <george@spacely.space.sprokets>
- X alias jane Jane Jetson <jane@sky-high.appts>
- X alias group george, jane
- X .in -2
- X--- 3659,3665 ----
- X .nf
- X .in +2
- X .ta 1.5i
- X! alias george George Jetson <george@spacely.space.sprockets>
- X alias jane Jane Jetson <jane@sky-high.appts>
- X alias group george, jane
- X .in -2
- X***************
- X*** 3573,3579 ****
- X .sp
- X You can mail using the alias as an address and it will be expanded
- X accordingly.
- X! You can not, however, reference an alias and specify a
- X comment or another address at the same time.
- X .sp
- X .ti +2
- X--- 3667,3673 ----
- X .sp
- X You can mail using the alias as an address and it will be expanded
- X accordingly.
- X! You cannot, however, reference an alias and specify a
- X comment or another address at the same time.
- X .sp
- X .ti +2
- X***************
- X*** 3593,3599 ****
- X ~/.mushXXXXXX Temporary mail file (copy of current folder)
- X .fi
- X .PP
- X! Temporary files which are created by the program are always
- X created with read/write access to the owner only; group and other
- X permissions are never set.
- X This is also true for the /usr/spool/mail/* files.
- X--- 3687,3693 ----
- X ~/.mushXXXXXX Temporary mail file (copy of current folder)
- X .fi
- X .PP
- X! Temporary files that are created by the program are always
- X created with read/write access to the owner only; group and other
- X permissions are never set.
- X This is also true for the /usr/spool/mail/* files.
- X***************
- X*** 3634,3641 ****
- X argv@spam.istc.sri.com sun!island!argv
- X .SH BUGS
- X The curses interface uses the curses library.
- X! The routines from the library that are used are the most basic and simple to
- X! avoid possible bugginess that different versions of UNIX might have.
- X However, one unavoidable problem is the reverse video mode.
- X Depending on your terminal,
- X the termcap entry for it, and the version of curses you are running,
- X--- 3728,3735 ----
- X argv@spam.istc.sri.com sun!island!argv
- X .SH BUGS
- X The curses interface uses the curses library.
- X! The routines from the library that are used are the most basic and simple
- X! so as to avoid possible bugginess that different versions of UNIX might have.
- X However, one unavoidable problem is the reverse video mode.
- X Depending on your terminal,
- X the termcap entry for it, and the version of curses you are running,
- X***************
- X*** 3650,3656 ****
- X and there is no swap space left, there may be problems.
- X One such problem is sending mail.
- X If this happens, then sending mail
- X! will fail and a segmentation fault from the spawned forked child will occur
- X unless the -v flag was given to mail.
- X The unsent letter will not be removed from the editing file ($home/.edXXXXXX)
- X and may be recovered.
- X--- 3744,3750 ----
- X and there is no swap space left, there may be problems.
- X One such problem is sending mail.
- X If this happens, then sending mail
- X! will fail and a segmentation fault from the spawned/forked child will occur
- X unless the -v flag was given to mail.
- X The unsent letter will not be removed from the editing file ($home/.edXXXXXX)
- X and may be recovered.
- X***************
- X*** 3671,3677 ****
- X .I window
- X to run commands from.
- X It is impossible to determine whether or not the user wants to run an
- X! interactive program or not so it is best to disallow its usage all together.
- X The experienced window user
- X can figure out how to really do shell layers from within the tool mode.
- X .PP
- X--- 3765,3771 ----
- X .I window
- X to run commands from.
- X It is impossible to determine whether or not the user wants to run an
- X! interactive program or not, so it is best to disallow its usage all together.
- X The experienced window user
- X can figure out how to really do shell layers from within the tool mode.
- X .PP
- X***************
- X*** 3684,3691 ****
- X The function keys and their ability to
- X .I work
- X has been variable depending on the version of SunWindows/SunView
- X! your Sun Workstation has.
- X! From time to time, it works, but when it
- X doesn't, it seems to be related to other user or system definable
- X dot-files or whatever.
- X I hardly use them, so I haven't had a chance
- X--- 3778,3784 ----
- X The function keys and their ability to
- X .I work
- X has been variable depending on the version of SunWindows/SunView
- X! your Sun Workstation has. From time to time, it works, but when it
- X doesn't, it seems to be related to other user or system definable
- X dot-files or whatever.
- X I hardly use them, so I haven't had a chance
- X***************
- X*** 3706,3717 ****
- X .I Mush
- X may complain or not even run since it needs temporary space with which
- X to work.
- X! Instead of finding new filesystems on it's own,
- X .I Mush
- X leaves this task up to the user.
- X The workaround is to set the variable
- X .B home
- X! in the initialization file to be a writable place in a filesystem which
- X has enough disk space.
- X This will set the user's home directory to be
- X set incorrectly, but resetting the home manually once in the shell
- X--- 3799,3810 ----
- X .I Mush
- X may complain or not even run since it needs temporary space with which
- X to work.
- X! Instead of finding new filesystems on its own,
- X .I Mush
- X leaves this task up to the user.
- X The workaround is to set the variable
- X .B home
- X! in the initialization file to be a writable place in a filesystem that
- X has enough disk space.
- X This will set the user's home directory to be
- X set incorrectly, but resetting the home manually once in the shell
- X*** OLD/mush.h Thu May 12 21:14:46 1988
- X--- mush.h Wed Jul 6 12:06:20 1988
- X***************
- X*** 1,19 ****
- X /* @(#)mush.h (c) copyright 1986 (Dan Heller) */
- X
- X! #define VERSION "Mail User's Shell (6.2 5/11/88)"
- X
- X #include "config.h"
- X
- X #ifdef CURSES
- X #ifdef USG
- X # define _USG
- X # undef USG
- X #endif /* USG */
- X #include <curses.h>
- X #if !defined(USG) && defined(_USG)
- X # define USG
- X! # undef _USG
- X! #endif /* USG && _USG */
- X #else /* CURSES */
- X #include <stdio.h>
- X #if defined(SYSV) && defined(USG)
- X--- 1,27 ----
- X /* @(#)mush.h (c) copyright 1986 (Dan Heller) */
- X
- X! #define VERSION "Mail User's Shell (6.3 6/25/88)"
- X
- X #include "config.h"
- X
- X #ifdef CURSES
- X+
- X #ifdef USG
- X # define _USG
- X # undef USG
- X #endif /* USG */
- X+ #ifdef SYSV
- X+ # define _SYSV
- X+ # undef SYSV
- X+ #endif /* SYSV */
- X #include <curses.h>
- X #if !defined(USG) && defined(_USG)
- X # define USG
- X! #endif /* USG */
- X! #if !defined(SYSV) && defined(_SYSV)
- X! # define SYSV
- X! #endif /* SYSV */
- X!
- X #else /* CURSES */
- X #include <stdio.h>
- X #if defined(SYSV) && defined(USG)
- X***************
- X*** 87,94 ****
- X * on_intr() and off_intr() macros, initialize WAS_INTR to false.
- X */
- X #define on_intr() \
- X! turnoff(glob_flags, WAS_INTR), oldint = signal(SIGINT, interrupt), \
- X! oldquit = signal(SIGQUIT, interrupt)
- X
- X #define off_intr() \
- X turnoff(glob_flags, WAS_INTR), (void) signal(SIGINT, oldint), \
- X--- 95,102 ----
- X * on_intr() and off_intr() macros, initialize WAS_INTR to false.
- X */
- X #define on_intr() \
- X! turnoff(glob_flags, WAS_INTR), oldint = signal(SIGINT, intr), \
- X! oldquit = signal(SIGQUIT, intr)
- X
- X #define off_intr() \
- X turnoff(glob_flags, WAS_INTR), (void) signal(SIGINT, oldint), \
- X***************
- X*** 104,110 ****
- X
- X /* for system-V machines that run termio */
- X #if defined(SYSV) && defined(USG)
- X! unsigned char vmin;
- X #define sg_erase c_cc[2]
- X #define sg_flags c_lflag
- X #define sg_kill c_cc[3]
- X--- 112,118 ----
- X
- X /* for system-V machines that run termio */
- X #if defined(SYSV) && defined(USG)
- X! unsigned char vmin, vtime;
- X #define sg_erase c_cc[2]
- X #define sg_flags c_lflag
- X #define sg_kill c_cc[3]
- X***************
- X*** 117,124 ****
- X #define cbrkon() \
- X (_tty.sg_flags &= ~ICANON, _tty.c_cc[VMIN] = 1, stty(0, &_tty))
- X #define cbrkoff() \
- X! (_tty.sg_flags |= ICANON, _tty.c_cc[VMIN] = vmin, stty(0, &_tty))
- X! #define savetty() (void) gtty(0, &_tty), vmin = _tty.c_cc[VMIN]
- X #define cbreak() cbrkon()
- X #define nocbreak() cbrkoff()
- X
- X--- 125,134 ----
- X #define cbrkon() \
- X (_tty.sg_flags &= ~ICANON, _tty.c_cc[VMIN] = 1, stty(0, &_tty))
- X #define cbrkoff() \
- X! (_tty.sg_flags |= ICANON, _tty.c_cc[VMIN] = vmin, \
- X! _tty.c_cc[VTIME] = vtime, stty(0, &_tty))
- X! #define savetty() \
- X! (void) gtty(0, &_tty), vtime = _tty.c_cc[VTIME], vmin = _tty.c_cc[VMIN]
- X #define cbreak() cbrkon()
- X #define nocbreak() cbrkoff()
- X
- X***************
- X*** 296,301 ****
- X--- 306,312 ----
- X #define CNTD_CMD 18 /* curses.c -- "...continue..." prompt in curses */
- X #define IS_SENDING 19 /* was started to send mail, not to be run as a shell */
- X #define MIL_TIME 20 /* if $mil_time is set, use 24hr military time fmt */
- X+ #define DATE_RECV 21 /* if $date_received, show date received on msgs */
- X
- X #define VERBOSE 1 /* verbose flag for sendmail */
- X #define INCLUDE 2 /* include msg in response */
- X***************
- X*** 314,323 ****
- X #define INDENT 13 /* indent included msg with string */
- X #define NO_IGNORE 14 /* don't ignore headers */
- X #define PRESERVE 15 /* preserve in mailbox unless deleted */
- X! #define TOP 15 /* just print the top of msg (same as pre) */
- X #define FORWARD 16 /* Forward messages into the message buffer */
- X #define REPLIED 17 /* Messages that have been replied to */
- X #define NEW_SUBJECT 18 /* new subject regardless of $ask (mail -s) */
- X
- X #define MAXMSGS_BITS MAXMSGS/sizeof(char) /* number of bits for bitmap */
- X
- X--- 325,335 ----
- X #define INDENT 13 /* indent included msg with string */
- X #define NO_IGNORE 14 /* don't ignore headers */
- X #define PRESERVE 15 /* preserve in mailbox unless deleted */
- X! #define M_TOP 15 /* just print the top of msg (same as pre) */
- X #define FORWARD 16 /* Forward messages into the message buffer */
- X #define REPLIED 17 /* Messages that have been replied to */
- X #define NEW_SUBJECT 18 /* new subject regardless of $ask (mail -s) */
- X+ #define SAVED 19 /* when message has been saved */
- X
- X #define MAXMSGS_BITS MAXMSGS/sizeof(char) /* number of bits for bitmap */
- X
- X***************
- X*** 415,428 ****
- X n_array[128], /* array of message numbers in the header window */
- X screen, /* number of headers window can handle */
- X
- X! quit(), cleanup(), catch(), do_alias(), respond(), cd(), sh(), stop(),
- X folder(), save_msg(), delete(), do_mail(), lpr(), alts(), set(), do_hdrs(),
- X! rm_edfile(), pick(), save_opts(), preserve(), sort(), readmsg(),
- X do_pick(), print_help(), folders(), question_mark(), do_from(), my_stty(),
- X! do_version(), disp_hist(), source(), do_echo(), sigchldcatcher(), ls(),
- X! nopenfiles(), Setenv(), Unsetenv(), Printenv(), bus_n_seg(), msg_flags(),
- X! toggle_debug(), stop_start(), interrupt();
- X
- X long
- X still_more, /* there is still more message to display */
- X spool_size, /* size of sppol mail regardless of current folder */
- X--- 427,445 ----
- X n_array[128], /* array of message numbers in the header window */
- X screen, /* number of headers window can handle */
- X
- X! quit(), do_alias(), respond(), cd(), sh(), stop(),
- X folder(), save_msg(), delete(), do_mail(), lpr(), alts(), set(), do_hdrs(),
- X! pick(), save_opts(), preserve(), sort(), readmsg(),
- X do_pick(), print_help(), folders(), question_mark(), do_from(), my_stty(),
- X! do_version(), disp_hist(), source(), do_echo(), ls(),
- X! nopenfiles(), Setenv(), Unsetenv(), Printenv(), msg_flags(), toggle_debug();
- X
- X+ #ifndef SIGRET
- X+ #define SIGRET int
- X+ #endif /* SIGRET */
- X+ SIGRET
- X+ rm_edfile(), stop_start(), bus_n_seg(), sigchldcatcher(), catch(), intr();
- X+
- X long
- X still_more, /* there is still more message to display */
- X spool_size, /* size of sppol mail regardless of current folder */
- X***************
- X*** 430,437 ****
- X time(); /* satisfy lint */
- X
- X void
- X! xfree(), free_vec(), error(), getmail(), mail_status(),
- X! file_to_fp(), init(), display_msg();
- X /* printf(), fclose(), fflush(), fputs(), fputc() */
- X #ifdef TIOCGLTC
- X struct ltchars ltchars; /* tty character settings */
- X--- 447,454 ----
- X time(); /* satisfy lint */
- X
- X void
- X! xfree(), free_vec(), error(), getmail(), mail_status(), close_lock(),
- X! file_to_fp(), init(), display_msg(), putstring(), cleanup(), fs_error();
- X /* printf(), fclose(), fflush(), fputs(), fputc() */
- X #ifdef TIOCGLTC
- X struct ltchars ltchars; /* tty character settings */
- X*** OLD/pick.c Thu May 12 21:14:48 1988
- X--- pick.c Tue Jun 28 21:38:28 1988
- X***************
- X*** 38,43 ****
- X--- 38,44 ----
- X register char **argv, list[];
- X {
- X register char c;
- X+ char pattern[256];
- X int o_before = before, o_after = after, o_search_from = search_from,
- X o_search_subj = search_subj, o_search_to = search_to, o_xflg = xflg,
- X o_mdy[3], n;
- X***************
- X*** 113,123 ****
- X clear_msg_list(list);
- X return -1;
- X }
- X if (verbose) {
- X print_more("Searching for messages");
- X if (mdy[1] == 0) {
- X print(" that %s \"%s\"", (xflg)? "doesn't contain": "contains",
- X! (*argv)? *argv: "<previous expression>");
- X if (search_subj)
- X print_more(" in subject line");
- X else if (search_from)
- X--- 114,126 ----
- X clear_msg_list(list);
- X return -1;
- X }
- X+ pattern[0] = 0;
- X+ (void) argv_to_string(pattern, argv);
- X if (verbose) {
- X print_more("Searching for messages");
- X if (mdy[1] == 0) {
- X print(" that %s \"%s\"", (xflg)? "doesn't contain": "contains",
- X! (*pattern)? pattern: "<previous expression>");
- X if (search_subj)
- X print_more(" in subject line");
- X else if (search_from)
- X***************
- X*** 138,144 ****
- X }
- X if (mdy[1] > 0 && icase)
- X print("using date: -i flag ignored.\n");
- X! ret = find_pattern(*argv, list);
- X bad:
- X before = o_before, after = o_after, search_from = o_search_from;
- X search_subj = o_search_subj, search_to = o_search_to, xflg = o_xflg;
- X--- 141,147 ----
- X }
- X if (mdy[1] > 0 && icase)
- X print("using date: -i flag ignored.\n");
- X! ret = find_pattern(pattern, list);
- X bad:
- X before = o_before, after = o_after, search_from = o_search_from;
- X search_subj = o_search_subj, search_to = o_search_to, xflg = o_xflg;
- X***************
- X*** 302,308 ****
- X char pattern[128];
- X register int this_msg = current_msg, val = 0;
- X static char *err = (char *)-1, direction;
- X! int (*oldint)(), (*oldquit)();
- X #ifdef REGCMP
- X char *regcmp();
- X #else /* REGCMP */
- X--- 305,311 ----
- X char pattern[128];
- X register int this_msg = current_msg, val = 0;
- X static char *err = (char *)-1, direction;
- X! SIGRET (*oldint)(), (*oldquit)();
- X #ifdef REGCMP
- X char *regcmp();
- X #else /* REGCMP */
- X*** OLD/setopts.c Thu Apr 7 22:47:56 1988
- X--- setopts.c Tue Jun 28 21:38:29 1988
- X***************
- X*** 66,71 ****
- X--- 66,75 ----
- X prompt = (tmp->value)? tmp->value : DEF_PROMPT;
- X else if (!strcmp(tmp->option, "mil_time"))
- X turnon(glob_flags, MIL_TIME);
- X+ #ifndef MSG_SEPARATOR
- X+ else if (!strcmp(tmp->option, "date_received"))
- X+ turnon(glob_flags, DATE_RECV);
- X+ #endif /* MSG_SEPARATOR */
- X else if (!strcmp(tmp->option, "escape"))
- X escape = (tmp->value)? tmp->value : DEF_ESCAPE;
- X else if (!strcmp(tmp->option, "hdr_format"))
- X***************
- X*** 189,194 ****
- X--- 193,202 ----
- X prompt = DEF_PROMPT;
- X else if (!strcmp(p, "mil_time"))
- X turnoff(glob_flags, MIL_TIME);
- X+ #ifndef MSG_SEPARATOR
- X+ else if (!strcmp(p, "date_received"))
- X+ turnoff(glob_flags, DATE_RECV);
- X+ #endif /* MSG_SEPARATOR */
- X else if (!strcmp(p, "escape"))
- X escape = DEF_ESCAPE;
- X else if (!strcmp(p, "hdr_format"))
- X*** OLD/signals.c Fri Jun 10 12:38:25 1988
- X--- signals.c Tue Jul 5 12:08:37 1988
- X***************
- X*** 90,96 ****
- X }
- X #endif /* SUNTOOL */
- X
- X! interrupt(sig)
- X {
- X Debug("interrupt() caught: %d\n", sig);
- X turnon(glob_flags, WAS_INTR);
- X--- 90,97 ----
- X }
- X #endif /* SUNTOOL */
- X
- X! SIGRET
- X! intr(sig)
- X {
- X Debug("interrupt() caught: %d\n", sig);
- X turnon(glob_flags, WAS_INTR);
- X***************
- X*** 101,106 ****
- X--- 102,108 ----
- X * If signals are ignored, return. If we're running the shell, longjmp back.
- X */
- X /*ARGSUSED*/
- X+ SIGRET
- X catch(sig)
- X {
- X Debug("Caught signal: %d\n", sig);
- X***************
- X*** 125,130 ****
- X--- 127,133 ----
- X }
- X
- X #ifdef SIGCONT
- X+ SIGRET
- X stop_start(sig)
- X {
- X extern FILE *ed_fp;
- X***************
- X*** 194,199 ****
- X--- 197,203 ----
- X #endif /* SIGCONT */
- X
- X /*ARGSUSED*/
- X+ void
- X cleanup(sig)
- X {
- X char buf[128], c = ison(glob_flags, IGN_SIGS)? 'n' : 'y';
- X***************
- X*** 215,224 ****
- X }
- X if (c != 'n' && *tempfile && unlink(tempfile) && !sig && errno != ENOENT)
- X error(tempfile);
- X- #ifdef SUNTOOL
- X- if (istool && tool)
- X- tool_destroy(tool);
- X- #endif /* SUNTOOL */
- X if (sig == SIGSEGV || sig == SIGBUS) {
- X if (isoff(glob_flags, IGN_SIGS)) {
- X fprintf(stderr, "coredump [n]? "), fflush(stderr);
- X--- 219,224 ----
- X***************
- X*** 320,325 ****
- X--- 320,326 ----
- X }
- X
- X /*ARGSUSED*/ /* we ignore the sigstack, cpu-usage, etc... */
- X+ SIGRET
- X bus_n_seg(sig)
- X {
- X fprintf(stderr, "%s: %s\n", prog_name,
- X*** OLD/sort.c Fri Feb 19 20:30:57 1988
- X--- sort.c Tue Jun 28 21:38:31 1988
- X***************
- X*** 11,17 ****
- X register char *argv[], list[];
- X {
- X int status_cmp(), author_cmp(), date_cmp(), subject_cmp(), subj_with_re();
- X! int (*oldint)(), (*oldquit)();
- X int (*how)() = status_cmp;
- X int n, offset = -1, range = 0;
- X
- X--- 11,17 ----
- X register char *argv[], list[];
- X {
- X int status_cmp(), author_cmp(), date_cmp(), subject_cmp(), subj_with_re();
- X! SIGRET (*oldint)(), (*oldquit)();
- X int (*how)() = status_cmp;
- X int n, offset = -1, range = 0;
- X
- X***************
- X*** 35,40 ****
- X--- 35,41 ----
- X print("Not enough messages to sort.\n");
- X return -1;
- X }
- X+ turnon(glob_flags, IGN_SIGS);
- X on_intr();
- X
- X if (list && ison(glob_flags, IS_PIPE)) {
- X***************
- X*** 59,64 ****
- X--- 60,66 ----
- X print("WARNING: Sorting interrupted: unpredictable order.\n");
- X turnon(glob_flags, DO_UPDATE);
- X }
- X+ turnoff(glob_flags, IGN_SIGS);
- X off_intr();
- X return -1;
- X }
- X***************
- X*** 115,120 ****
- X--- 117,126 ----
- X if (ison(msg1->m_flags,REPLIED) && isoff(msg2->m_flags,REPLIED))
- X return -order;
- X if (isoff(msg1->m_flags,REPLIED) && ison(msg2->m_flags,REPLIED))
- X+ return order;
- X+ if (ison(msg1->m_flags,SAVED) && isoff(msg2->m_flags,SAVED))
- X+ return -order;
- X+ if (isoff(msg1->m_flags,SAVED) && ison(msg2->m_flags,SAVED))
- X return order;
- X
- X return order;
- X*** OLD/strings.c Thu May 12 21:14:49 1988
- X--- strings.c Tue Jun 28 21:38:31 1988
- X***************
- X*** 221,235 ****
- X #ifdef SYSV
- X #include <varargs.h>
- X char *
- X! Sprintf(buf, fmt, va_alist)
- X! register char *buf, *fmt;
- X va_dcl
- X {
- X va_list ap;
- X! #ifdef VPRINTF
- X va_start(ap);
- X (void) vsprintf(buf, fmt, ap);
- X- va_end(ap);
- X #else
- X {
- X FILE foo;
- X--- 221,237 ----
- X #ifdef SYSV
- X #include <varargs.h>
- X char *
- X! Sprintf(va_alist)
- X va_dcl
- X {
- X+ char *buf, *fmt;
- X va_list ap;
- X!
- X va_start(ap);
- X+ buf = va_arg(ap, char *);
- X+ fmt = va_arg(ap, char *);
- X+ #ifdef VPRINTF
- X (void) vsprintf(buf, fmt, ap);
- X #else
- X {
- X FILE foo;
- X***************
- X*** 236,247 ****
- X foo._cnt = BUFSIZ;
- X foo._base = foo._ptr = buf; /* may have to be cast (unsigned char *) */
- X foo._flag = _IOWRT+_IOSTRG;
- X- va_start(ap);
- X (void) _doprnt(fmt, ap, &foo);
- X- va_end(ap);
- X *foo._ptr = '\0'; /* plant terminating null character */
- X }
- X #endif /* VPRINTF */
- X return buf;
- X }
- X #endif /* SYSV */
- X--- 238,248 ----
- X foo._cnt = BUFSIZ;
- X foo._base = foo._ptr = buf; /* may have to be cast (unsigned char *) */
- X foo._flag = _IOWRT+_IOSTRG;
- X (void) _doprnt(fmt, ap, &foo);
- X *foo._ptr = '\0'; /* plant terminating null character */
- X }
- X #endif /* VPRINTF */
- X+ va_end(ap);
- X return buf;
- X }
- X #endif /* SYSV */
- X***************
- X*** 259,262 ****
- X--- 260,285 ----
- X fflush(stdout);
- X } else
- X wprint("\n");
- X+ }
- X+
- X+ /*
- X+ * putstring -- put a string into a file. Expand \t's into tabs and \n's
- X+ * into newlines. Append a \n and fflush(fp);
- X+ */
- X+ void
- X+ putstring(p, fp)
- X+ register char *p;
- X+ register FILE *fp;
- X+ {
- X+ for ( ; *p; ++p)
- X+ if (*p != '\\')
- X+ fputc(*p, fp);
- X+ else
- X+ switch(*++p) {
- X+ case 'n': fputc('\n', fp);
- X+ when 't': fputc('\t', fp);
- X+ otherwise: fputc(*p, fp);
- X+ }
- X+ fputc('\n', fp);
- X+ fflush(fp);
- X }
- X*** OLD/viewopts.c Thu May 12 21:14:50 1988
- X--- viewopts.c Tue Jun 28 21:38:32 1988
- X***************
- X*** 45,50 ****
- X--- 45,52 ----
- X "Path to search for directories when the \"cd\" command is issued." },
- X { "crt", "Lines", TEXT,
- X "The number of lines a message must have for 'pager' to be invoked." },
- X+ { "date_received", NULL, TOOL | TEXT,
- X+ "Time displayed for message headers shows date received (or sent)." },
- X { "dead", "Filename", TOOL | TEXT,
- X "The name of the file to store dead mail. ~/dead.letter by default." },
- X { "dot", NULL, TOOL | TEXT,
- X***************
- X*** 65,70 ****
- X--- 67,76 ----
- X "How many commands to remember (like csh)." },
- X { "hold", NULL, TOOL | TEXT,
- X "Read but not deleted messages are saved in spool -- not mbox." },
- X+ { "home", "Directory", TOOL | TEXT,
- X+ "The user's home directory." },
- X+ { "hostname", "Hostname", TOOL | TEXT,
- X+ "user definable name for the name of your machine." },
- X { "ignore_bang", NULL, TEXT,
- X "Ignore '!' as a history reference. Otherwise, escape by: \\!" },
- X { "ignoreeof", "-Command", TEXT,
- X***************
- X*** 89,95 ****
- X "Ignore RETURN. If set to a string, execute \"command\"" },
- X { "no_expand", NULL, TEXT | TOOL,
- X "Prevents expansion of Mush aliases in outgoing mail." },
- X! { "no_hdr", NULL, TOOL | TEXT,
- X "If set, personalized headers are NOT inserted to outgoing mail." },
- X { "no_reverse", NULL, TOOL | TEXT,
- X "disables reverse video in curses mode -- uses \"bold\" in tool mode." },
- X--- 95,101 ----
- X "Ignore RETURN. If set to a string, execute \"command\"" },
- X { "no_expand", NULL, TEXT | TOOL,
- X "Prevents expansion of Mush aliases in outgoing mail." },
- X! { "no_hdrs", NULL, TOOL | TEXT,
- X "If set, personalized headers are NOT inserted to outgoing mail." },
- X { "no_reverse", NULL, TOOL | TEXT,
- X "disables reverse video in curses mode -- uses \"bold\" in tool mode." },
- X***************
- X*** 109,118 ****
- X "Your prompt. \"help prompt\" for more information." },
- X { "quiet", NULL, TEXT,
- X "Don't print the version number of Mush on startup." },
- X { "record", "Filename", TOOL | TEXT,
- X "Save all outgoing mail in specified filename" },
- X { "reply_to_hdr", "Headers", TOOL | TEXT,
- X! "List of headers use to construct reply adresses from a message.", },
- X { "screen", "Number of Headers", TEXT,
- X "Number of headers to print in non-suntools (text) mode" },
- X { "screen_win", "Number of Headers", TOOL,
- X--- 115,128 ----
- X "Your prompt. \"help prompt\" for more information." },
- X { "quiet", NULL, TEXT,
- X "Don't print the version number of Mush on startup." },
- X+ { "realname", "Name:", TOOL | TEXT,
- X+ "Your real name." },
- X { "record", "Filename", TOOL | TEXT,
- X "Save all outgoing mail in specified filename" },
- X { "reply_to_hdr", "Headers", TOOL | TEXT,
- X! "List of headers use to construct reply adresses from a message." },
- X! { "save_empty", NULL, TOOL | TEXT,
- X! "Folders which have all messages deleted are NOT removed on updates." },
- X { "screen", "Number of Headers", TEXT,
- X "Number of headers to print in non-suntools (text) mode" },
- X { "screen_win", "Number of Headers", TOOL,
- X***************
- X*** 127,133 ****
- X "Pre-sorting of messages on program startup (set to valid sort option)" },
- X { "squeeze", NULL, TOOL | TEXT,
- X "When reading messages, squeeze all blank lines into one." },
- X! { "top", "Lines", TOOL | TEXT,
- X "Number of lines to print of a message for the 'top' command." },
- X { "tmpdir", "Directory", TOOL | TEXT,
- X "Directory to use for temporary files used by Mush." },
- X--- 137,143 ----
- X "Pre-sorting of messages on program startup (set to valid sort option)" },
- X { "squeeze", NULL, TOOL | TEXT,
- X "When reading messages, squeeze all blank lines into one." },
- X! { "toplines", "Lines", TOOL | TEXT,
- X "Number of lines to print of a message for the 'top' command." },
- X { "tmpdir", "Directory", TOOL | TEXT,
- X "Directory to use for temporary files used by Mush." },
- END_OF_FILE
- if test 52485 -ne `wc -c <'Diffs.6.3.c'`; then
- echo shar: \"'Diffs.6.3.c'\" unpacked with wrong size!
- fi
- # end of 'Diffs.6.3.c'
- fi
- echo shar: End of shell archive.
- exit 0
-